<?php
namespace Festivalcn\Controller;
use Think\Controller;

class BaseController extends Controller {
	/*
	 * 后台主页显示
	 */
	public function _initialize(){
		 define('MOBILE', false);
		if($this->is_mobile()==true){ 
			define('MOBILE',true);
		}
	}

	protected function is_mobile(){ 
		$user_agent = $_SERVER['HTTP_USER_AGENT'];
		$mobile_agents = Array("240x320","acer","acoon","acs-","abacho","ahong","airness","alcatel","amoi","android","anywhereyougo.com","applewebkit/525","applewebkit/532","asus","audio","au-mic","avantogo","becker","benq","bilbo","bird","blackberry","blazer","bleu","cdm-","compal","coolpad","danger","dbtel","dopod","elaine","eric","etouch","fly ","fly_","fly-","go.web","goodaccess","gradiente","grundig","haier","hedy","hitachi","htc","huawei","hutchison","inno","ipad","ipaq","ipod","jbrowser","kddi","kgt","kwc","lenovo","lg ","lg2","lg3","lg4","lg5","lg7","lg8","lg9","lg-","lge-","lge9","longcos","maemo","mercator","meridian","micromax","midp","mini","mitsu","mmm","mmp","mobi","mot-","moto","nec-","netfront","newgen","nexian","nf-browser","nintendo","nitro","nokia","nook","novarra","obigo","palm","panasonic","pantech","philips","phone","pg-","playstation","pocket","pt-","qc-","qtek","rover","sagem","sama","samu","sanyo","samsung","sch-","scooter","sec-","sendo","sgh-","sharp","siemens","sie-","softbank","sony","spice","sprint","spv","symbian","tablet","talkabout","tcl-","teleca","telit","tianyu","tim-","toshiba","tsm","up.browser","utec","utstar","verykool","virgin","vk-","voda","voxtel","vx","wap","wellco","wig browser","wii","windows ce","wireless","xda","xde","zte");
		$is_mobile = false;
		foreach ($mobile_agents as $device) { //这里把值遍历一遍，用于查找是否有上述字符串出现过 
	       if (stristr($user_agent, $device)) { //stristr 查找访客端信息是否在上述数组中，不存在即为PC端。 
	            $is_mobile = true; 
	            break; 
	        } 
    	 }  
		return $is_mobile;
	}

	public function qrcode($actid,$data=null){
		if(!empty($data)){
			vendor("phpqrcode.phpqrcode");
			$object = new \QRcode();
			$level=3;
			$size=4;
			//容错级别
			$errorCorrectionLevel =intval($level);
			//生成图片大小
			$matrixPointSize = intval($size);
			$path = "assets/codeimg/";
			$fileName = $path.$actid.'.png';
			if(!$this->checkimg($fileName)){
				$object->png($data, $fileName,  $errorCorrectionLevel, $matrixPointSize, 2);
			}
			return $fileName;
		}else{
			return false;
		}

	}
	//判断二维码是否存在
	protected function checkimg($imgurl){
		$res = false;
		if(file_exists($imgurl)){
		    $res = true;
		}
		return $res;
	}



	function getClientIP() {  
			$IPaddress='';
	        if (isset($_SERVER)){
	            if(isset($_SERVER["HTTP_X_FORWARDED_FOR"])){
	                $IPaddress = $_SERVER["HTTP_X_FORWARDED_FOR"];
	            }elseif(isset($_SERVER["HTTP_CLIENT_IP"])){
	                $IPaddress = $_SERVER["HTTP_CLIENT_IP"];
	            }else{
	                $IPaddress = $_SERVER["REMOTE_ADDR"];
	            }
	        }else{
	            if(getenv("HTTP_X_FORWARDED_FOR")){
	                $IPaddress = getenv("HTTP_X_FORWARDED_FOR");
	            }elseif(getenv("HTTP_CLIENT_IP")) {
	                $IPaddress = getenv("HTTP_CLIENT_IP");
	            }else{
	                $IPaddress = getenv("REMOTE_ADDR");
	            }
	        }
        return $IPaddress;
		}

}